package Negocio;

import java.util.ArrayList;
import java.util.List;

import DTO.DTO_CompraInsumo;
import DTO.DTO_OrdenDeCompra;
import Entities.Entity_CompraInsumo;
import Entities.Entity_OrdenDeCompra;

public class OrdenDeCompra {

	private int idOrdenDeCompra;
	private List<CompraInsumo> comprasinsumo;
	private Proveedor proveedor;

	
	public OrdenDeCompra(List<CompraInsumo> comprasinsumo, Proveedor proveedor) {
		super();
		this.comprasinsumo = comprasinsumo;
		this.proveedor = proveedor;
	}
	
	public OrdenDeCompra(DTO_OrdenDeCompra orden) {
		this.idOrdenDeCompra = orden.getIdOrdenDeCompra();
		comprasinsumo = new ArrayList<CompraInsumo>();
		for(DTO_CompraInsumo c : orden.getComprasinsumo()){
			comprasinsumo.add(new CompraInsumo(c));
		}
		this.proveedor = new Proveedor(orden.getProveedor());
	}
	
	public OrdenDeCompra(Entity_OrdenDeCompra orden) {
		this.idOrdenDeCompra = orden.getIdOrdenDeCompra();
		comprasinsumo = new ArrayList<CompraInsumo>();
		for(Entity_CompraInsumo c : orden.getComprasinsumo()){
			comprasinsumo.add(new CompraInsumo(c));
		}
		this.proveedor = new Proveedor(orden.getProveedor());
	}


	public OrdenDeCompra()
	{
		
	}
	public List<CompraInsumo> getComprasinsumo() {
		return comprasinsumo;
	}

	public void setComprasinsumo(List<CompraInsumo> comprasinsumo) {
		this.comprasinsumo = comprasinsumo;
	}

	public Proveedor getProveedor() {
		return proveedor;
	}

	public void setProveedor(Proveedor proveedor) {
		this.proveedor = proveedor;
	}

	public int getIdOrdenDeCompra() {
		return idOrdenDeCompra;
	}

	public void setIdOrdenDeCompra(int idOrdenDeCompra) {
		this.idOrdenDeCompra = idOrdenDeCompra;
	}
	
	public DTO_OrdenDeCompra toDTO(){
		DTO_OrdenDeCompra o = new DTO_OrdenDeCompra();
		o.setIdOrdenDeCompra(this.idOrdenDeCompra);
		o.setProveedor(this.proveedor.toDTO());
		List<DTO_CompraInsumo> list = new ArrayList<DTO_CompraInsumo>();
		for(CompraInsumo i : this.comprasinsumo){
			list.add(i.toDTO());
		}
		o.setComprasinsumo(list);
		return o;
	}
	
	public Entity_OrdenDeCompra toEntity(){
		Entity_OrdenDeCompra o = new Entity_OrdenDeCompra();
		o.setIdOrdenDeCompra(this.idOrdenDeCompra);
		o.setProveedor(this.proveedor.toEntity());
		List<Entity_CompraInsumo> list = new ArrayList<Entity_CompraInsumo>();
		for(CompraInsumo i : this.comprasinsumo){
			list.add(i.toEntity());
		}
		o.setComprasinsumo(list);
		return o;
	}
}
